<template>

    <template v-for="(item, index) in props.menuData" >
        <el-menu-item 
        @click="handleClick(item , `${props.index}-${item.meta.id}` )"
        v-if="!item.children || item.children.length === 0" 
        :index="`${props.index}-${item.meta.id}`"
        :key="`${props.index}-${item.meta.id}`">
            <el-icon size="20">
                <component :is="item.meta.icon"></component>
            </el-icon>
            <span>{{ item.meta.name }}</span>
        </el-menu-item>
        <el-sub-menu v-else :index="`${props.index}-${item.meta.id}`">
            <template #title>
                <el-icon size="20">
                    <component :is="item.meta.icon"></component>
                </el-icon>
                <span>{{ item.meta.name }}</span> 
            </template>
            <tree-menu 
            :menuData="item.children" 
            :index="`${props.index}-${item.meta.id}`" />
        </el-sub-menu>
    </template>

</template>
<script setup>
import { useRouter } from 'vue-router'
import { useMenuStore } from '../store/modules/menu.js'
//接受父组件传来的值
const props = defineProps(['menuData' , 'index'])
// console.log(props.menuData)
//创建router实例
const router = useRouter()
const menuStore = useMenuStore()
//点击菜单
const handleClick = (item, index) => {
    console.log(item.meta,'handleClick')
    menuStore.addMenu(item)
    router.push(item.meta.path)
}

</script>
<style lang="less" scoped>

</style>